import axios from '@/utils/http';
import base from './base';

export default {
  // 加载评论列表
  index(params) {
    return axios.get(
      `${base.sq}/comments`,
      {
        params: {
          commentable_type: params.placement, // 评论区位置 ProductFile Issue PullQuest GroupNotice
          commentable_id: params.placementId, // 评论区位置的id
          page: params.page,
          per_number: params.number,
          role: params.role,
          order_action: params.order,
        },
      },
    );
  },
  // 加载楼中楼
  subIndex(params) {
    return axios.get(
      `${base.sq}/comments/${params.commentId}/children`,
      {
        params: {
          page: params.page,
          per_number: params.number,
          order_action: params.order,
        },
      },
    );
  },
  // 创建评论
  create(params) {
    return axios.post(
      `${base.sq}/comments`,
      {
        commentable_type: params.placement, // 回复的是 Issue 还是 ProductFile
        commentable_id: params.placementId, // 这里的id可能是issue的id也可能是文件的id
        receive_comment_id: params.receiveCommentId, // 回复的是哪个评论
        comment_id: params.mainFloorId, // 回复他人评论时，处于哪个主楼，主楼id
        content: params.content, // 内容
        reply_sub_floor: params.replySubFloor, // 是不是回复楼中楼
        receiver: params.receiveUserId, // 被回复人的id
        role: params.role, // 回答区还是评论区
      },
    );
  },
  // 编辑更新
  update(params) {
    return axios.put(
      `${base.sq}/comments/${params.commentId}`,
      {
        content: params.content,
      },
    );
  },
  // 删除
  delete(params) {
    return axios.delete(
      `${base.sq}/comments/${params.commentId}`,
    );
  },
};
